using System;
using System.ComponentModel;


namespace MCMLXVII.Core.Common.BackEnd
{

	public delegate void HostTraceEventHandler(object sender, HostTraceEventArgs e);

	/// <summary>
	/// Summary description for HostTraceEventArgs.
	/// </summary>
    [Serializable()]
	public class HostTraceEventArgs: EventArgs 
	{
		private string _ActionName;
		private Guid _ActionID;
		private string _Info;
		private bool _ActionTrace;

		public HostTraceEventArgs(string ActionName, Guid ActionID,  string Info)
		{
			_ActionName = ActionName;
			_ActionID = ActionID;
			_Info = Info;
			_ActionTrace = true;
		}
		public HostTraceEventArgs(string Info)
		{
			_ActionName = null;
			_Info = Info;
			_ActionTrace = false;
		}
		public string ActionName
		{
			get {return _ActionName;}
		}
		public bool IsActionEvent()
		{
			return _ActionTrace;
		}
		public Guid ActionID
		{
			get {return _ActionID;}
		}
		public string Info
		{
			get {return _Info;}
		}
	}
}